{{#files}}

<!-- {{file_name}} -->

{{&file_description}}

{{#file_messages}}

{{#message_has_declaration}}

{{^message_is_nested}}
{{message_long_name}}
________________________________________________________________________________
{{/message_is_nested}}
{{#message_is_nested}}
{{message_long_name}}
--------------------------------------------------------------------------------
{{/message_is_nested}}

{{&message_description}}


{{#message_has_declaration}}
.. code-block:: proto

{{&message_declaration}}
{{/message_has_declaration}}


{{#message_has_extensions}}

.. list-table:: {{message_long_name}} Extensions
   :widths: 15 10 20 20 50
   :header-rows: 1

   * - Extension
     - Type
     - Base
     - Number
     - Description
   {{#message_extensions}}
   * - {{extension_name}}
     - ``{{extension_long_type}}``
     - ``{{extension_containing_long_type}}``
     - {{extension_number}}
     - {{#nobr}}{{&extension_description}}{{#extension_default_value}} Default: {{extension_default_value}}{{/extension_default_value}}{{/nobr}}
   {{/message_extensions}}

{{/message_has_extensions}}
{{/message_has_declaration}}

{{/file_messages}}





{{#file_enums}}

{{^enum_is_nested}}
{{enum_long_name}}
________________________________________________________________________________
{{/enum_is_nested}}
{{#enum_is_nested}}
{{enum_long_name}}
--------------------------------------------------------------------------------
{{/enum_is_nested}}

{{&enum_description}}

.. code-block:: proto

{{&enum_declaration}}

{{/file_enums}}





{{#file_has_extensions}}

File-level Extensions
---------------------

.. list-table:: {{file_name}} Extensions
   :widths: 15 20 20 20 50
   :header-rows: 1

   * - Extension
     - Type
     - Base
     - Number
     - Description
   {{#file_extensions}}
   * - {{extension_name}}
     - ``{{extension_long_type}}``
     - ``{{extension_containing_long_type}}``
     - ``{{extension_number}}``
     - {{#nobr}}{{extension_description}}{{#extension_default_value}} Default: {{extension_default_value}}{{/extension_default_value}}{{/nobr}}
   {{/file_extensions}}

{{/file_has_extensions}}





{{#file_services}}

{{service_name}}
________________________________________________________________________________

{{&service_description}}

.. list-table:: {{service_name}}
   :widths: 15 20 20 50
   :header-rows: 1

   * - Method Name
     - Request Type
     - Response Type
     - Description
   {{#service_methods}}
   * - {{method_name}}
     - ``{{method_request_long_type}}``
     - ``{{method_response_long_type}}``
     - {{#nobr}}{{& method_description}}{{/nobr}}
   {{/service_methods}}

{{/file_services}}

{{/files}}